package cs4280.ass2.entity;

import org.apache.commons.lang.builder.ToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle;

public class Ticket extends AuditableEntity {
	private static final long serialVersionUID = 1L;
	private long appUserId;
	private long scheduleSeatDetailId;
	private String ticketStatus;
	public static final String TICKET_STATUS_ACTIVE = "TICKET_STATUS_ACTIVE";
	public static final String TICKET_STATUS_PENDING = "TICKET_STATUS_PENDING";
	public static final String TICKET_STATUS_REFUNDED = "TICKET_STATUS_REFUNDED";
	public static final String TICKET_STATUS_NON_REFUNDABLE = "TICKET_STATUS_NON_REFUNDABLE";
	public static final String TICKET_STATUS_DELETED = "TICKET_STATUS_DELETED";
	
	public long getAppUserId() {
		return appUserId;
	}

	public void setAppUserId(long appUserId) {
		this.appUserId = appUserId;
	}

	public long getScheduleSeatDetailId() {
		return scheduleSeatDetailId;
	}

	public void setScheduleSeatDetailId(long scheduleSeatDetailId) {
		this.scheduleSeatDetailId = scheduleSeatDetailId;
	}
	
	public void setTicketStatus(String ticketStatus) {
		this.ticketStatus = ticketStatus;
	}

	public String getTicketStatus() {
		return ticketStatus;
	}
	
	@Override
	public String toString() {
		ToStringBuilder builder = new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE);
		builder.append("id", this.getId());
		builder.append("appUserId", this.getAppUserId());
		builder.append("scheduleSeatDetailId", this.getScheduleSeatDetailId());
		builder.append("ticketStatus", this.getTicketStatus());
		builder.append("createDate",this.getCreateDate());
		builder.append("createUser",this.getCreateUser());
		builder.append("modifyDate",this.getModifyDate());
		builder.append("modifyUser",this.getModifyUser());
		return builder.toString();
	}
}
